package servidor;

import java.net.MalformedURLException;
import java.rmi.Naming;
import java.rmi.RemoteException;
import concurso.logica.FachadaJueces;
import concurso.logica.FachadaPublico;
import concurso.persistencia.Propiedades;
import concurso.persistencia.excepciones.PersistenciaException;


//Programa para crear y publicar los objetos remotos FachadaJueces y FachadaPublico:

public class Servidor {
	
	public static void main (String [] args) throws PersistenciaException{
		try{ // instancio mi Objeto Remoto		
			FachadaJueces facJue = new FachadaJueces();
			System.out.println ("Fachada Jueces: ");
			System.out.println ("Antes de publicarlo");
			
			String rutaJue = Propiedades.getInstancia().obtenerPropertiesServidor() +  "/concursoJ";
			System.out.println("Servidor RMI: " + rutaJue);
			Naming.rebind(rutaJue, facJue); //Pido a rmiregistry que registre FachadaJueces (mi objeto remoto).
			System.out.println ("Luego de publicarlo");
			//Naming.rebind("//192.168.1.102:1099/concursoJ", facJue);
			
			FachadaPublico facPub = new FachadaPublico();
			System.out.println ("\nFachada Publico: ");
			System.out.println ("Antes de publicarlo");
			
			String rutaPub = Propiedades.getInstancia().obtenerPropertiesServidor() + "/concursoP";
			System.out.println("Servidor RMI: " + rutaPub); 
			Naming.rebind(rutaPub, facPub); //Pido a rmiregistry que registre FachadaPublico (mi objeto remoto).
			System.out.println ("Luego de publicarlo");
			//Naming.rebind("//192.168.1.102:1099/concursoP", facPub);		
		}	
		catch (RemoteException e){
			e.printStackTrace();
		}
		catch (MalformedURLException e){
			e.printStackTrace();
		}
	}
}